package com.example.vehiclefabric.DTO;

/**
 * @name: VehicleDTO
 * @description: 定义车辆智能合约中的车辆信息。
 * @author: Lulu Zhao
 **/
public class VehicleDTO {
    private String vehicleId;
    private String hashedPassword;
    private String currentHashTime;
    private String currentState;
    private String location;

    public VehicleDTO(String vehicleId, String hashedPassword, String currentHashTime, String currentState, String location) {
        this.vehicleId = vehicleId;
        this.hashedPassword = hashedPassword;
        this.currentHashTime = currentHashTime;
        this.currentState = currentState;
        this.location = location;
    }

    /**
     * @name: getVehicleId
     * @description: 获取车辆ID。
     * @params: []
     * @return: java.lang.String
     * @author: Lulu Zhao
     */
    public String getVehicleId() {
        return vehicleId;
    }

    /**
     * @name: setVehicleId
     * @description: 设置车辆ID。
     * @params: [vehicleId]
     * @return: void
     * @author: Lulu Zhao
     */
    public void setVehicleId(String vehicleId) {
        this.vehicleId = vehicleId;
    }

    /**
     * @name: getHashedPassword
     * @description: 获取车辆现存口令。
     * @params: []
     * @return: java.lang.String
     * @author: Lulu Zhao
     */
    public String getHashedPassword() {
        return hashedPassword;
    }

    /**
     * @name: setHashedPassword
     * @description: 设置车辆现存口令。
     * @params: [hashedPassword]
     * @return: void
     * @author: Lulu Zhao
     */
    public void setHashedPassword(String hashedPassword) {
        this.hashedPassword = hashedPassword;
    }

    /**
     * @name: getCurrentHashTime
     * @description: 获取车辆口令哈希次数。
     * @params: []
     * @return: java.lang.String
     * @author: Lulu Zhao
     */
    public String getCurrentHashTime() {
        return currentHashTime;
    }

    /**
     * @name: setCurrentHashTime
     * @description: 设置车辆口令哈希次数。
     * @params: [currentHashTime]
     * @return: void
     * @author: Lulu Zhao
     */
    public void setCurrentHashTime(String currentHashTime) {
        this.currentHashTime = currentHashTime;
    }

    /**
     * @name: getCurrentState
     * @description: 获取车辆当前状态。
     * @params: []
     * @return: java.lang.String
     * @author: Lulu Zhao
     */
    public String getCurrentState() {
        return currentState;
    }

    /**
     * @name: setCurrentState
     * @description: 设置车辆当前状态。
     * @params: [currentState]
     * @return: void
     * @author: Lulu Zhao
     */
    public void setCurrentState(String currentState) {
        this.currentState = currentState;
    }

    /**
     * @name: getLocation
     * @description: 获取车辆位置。
     * @params: []
     * @return: java.lang.String
     * @author: Lulu Zhao
     */
    public String getLocation() {
        return location;
    }

    /**
     * @name: setLocation
     * @description: 设置车辆位置。
     * @params: [location]
     * @return: void
     * @author: Lulu Zhao
     */
    public void setLocation(String location) {
        this.location = location;
    }

    /**
     * @name: toString
     * @description: toString方法。
     * @params: []
     * @return: java.lang.String
     * @author: Lulu Zhao
     */
    @Override
    public String toString() {
        return "VehicleDTO{" +
                "vehicleId='" + vehicleId + '\'' +
                ", hashedPassword='" + hashedPassword + '\'' +
                ", currentHashTime='" + currentHashTime + '\'' +
                ", currentState='" + currentState + '\'' +
                ", location='" + location + '\'' +
                '}';
    }
}
